emacs.git
2 years agoWhen navigating through history in EWW, don't keep adding to 'eww-history'
Jim Porter [Sun, 18 Feb 2024 04:49:15 +0000 (20:49 -0800)]
When navigating through history in EWW, don't keep adding to 'eww-history'

This resolves an issue where navigating back and then forward kept
adding new history entries so you could never hit the "end" (bug#69232).

* lisp/net/eww.el (eww-before-browse-history-function): New option.
(eww-history-position): Add docstring.
(eww-mode-map, eww-context-menu): Use correct predicates for when to
enable back/forward.
(eww-save-history): Save history entry in its original place when
viewing a historical page.
(eww--before-browse): New function...
(eww, eww-follow-link, eww-readable): ... call it.
(eww-render): Don't set 'eww-history-position' here...
(eww--before-browse): ... instead, set it here.
(eww-back-url): Set 'eww-history-position' based on the result of
'eww-save-history'.
(eww-forward-url): Set 'eww-history-position' directly, since
'eww-save-history' no longer adds a new entry in this case.
(eww-delete-future-history, eww-clone-previous-history): New functions.

* test/lisp/net/eww-tests.el: New file.

* etc/NEWS: Announce this change.

2 years agoTramp fixes after running regression tests on Android
Michael Albinus [Wed, 6 Mar 2024 16:51:42 +0000 (17:51 +0100)]
Tramp fixes after running regression tests on Android

* lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
Unset environment variable PS2.

* lisp/net/tramp-androidsu.el (tramp-default-host-alist):
Don't add an entry; `tramp-default-host' is set properly.
(tramp-androidsu-maybe-open-connection): Don't set connection
property "remote-namespace" to nil, this is the default anyway.
Don't set connection property "remote-path", we use
connection-local values instead.  Unset environment variable PS2.
Dump shell options after setting all of them.
(tramp-androidsu-handle-make-process): Don't use hard-coded user "root".
(tramp-androidsu-connection-local-default-variables): New defvar.
Add it to connection-local profiles.

2 years agoRename type_hierarchy.* -> elisp_type_hierarchy.*
Andrea Corallo [Wed, 6 Mar 2024 15:43:45 +0000 (16:43 +0100)]
Rename type_hierarchy.* -> elisp_type_hierarchy.*

* doc/lispref/elisp_type_hierarchy.txt: Renamed.
* doc/lispref/elisp_type_hierarchy.jpg: Likewise.
* doc/lispref/Makefile.in (auxfiles)
($(buildinfodir)/elisp_type_hierarchy.txt)
($(buildinfodir)/elisp_type_hierarchy.jpg): Update.
* admin/syncdoc-type-hierarchy.el (syncdoc-update-type-hierarchy0): Likewise.
* Makefile.in (install-info, uninstall): Likewise.

2 years agoRe-generate type_hierarchy.*
Andrea Corallo [Wed, 6 Mar 2024 14:50:33 +0000 (15:50 +0100)]
Re-generate type_hierarchy.*

* doc/lispref/type_hierarchy.txt: Update.
* doc/lispref/type_hierarchy.jpg: Likewise.

2 years ago* Update syncdoc to dump all preloaded type hierarchy
Andrea Corallo [Wed, 6 Mar 2024 14:41:37 +0000 (15:41 +0100)]
* Update syncdoc to dump all preloaded type hierarchy

* admin/syncdoc-type-hierarchy.el (syncdoc-file)
(syncdoc-emacs-repo-dir): New constants.
(syncdoc-lispref-dir): Make use of.
(syncdoc-all-types): New function.
(comp--direct-supertypes): Declare.
(syncdoc-hierarchy): Update.
(syncdoc-update-type-hierarchy0): Rename from
'syncdoc-update-type-hierarchy' and make non interactive.
(syncdoc-update-type-hierarchy): New function.

2 years agoDon't report files from read-only adb partitions as writable
Po Lu [Wed, 6 Mar 2024 02:48:28 +0000 (10:48 +0800)]
Don't report files from read-only adb partitions as writable

* lisp/net/tramp-adb.el (tramp-adb-handle-file-writable-p):
Ignore the file-attributes cache, since file mode is not a
reliable indicator of writability.

2 years ago; Fix last change
Po Lu [Wed, 6 Mar 2024 02:20:36 +0000 (10:20 +0800)]
; Fix last change

* lisp/net/tramp-androidsu.el
(tramp-androidsu-generate-wrapper): Arguments to fset must be
symbols rather than functions.

2 years ago* Makefile.in (install-info): Fix target (bug#69569).
Vincenzo Pupillo [Tue, 5 Mar 2024 21:36:34 +0000 (22:36 +0100)]
* Makefile.in (install-info): Fix target (bug#69569).

2 years ago; * etc/NEWS: Fix wording and punctuation of a recently added entry.
Eli Zaretskii [Tue, 5 Mar 2024 17:32:29 +0000 (19:32 +0200)]
; * etc/NEWS: Fix wording and punctuation of a recently added entry.

2 years ago* lisp/tab-bar.el (tab-bar-tab-post-select-functions): New hook (bug#69093).
Juri Linkov [Tue, 5 Mar 2024 17:14:28 +0000 (19:14 +0200)]
* lisp/tab-bar.el (tab-bar-tab-post-select-functions): New hook (bug#69093).

(tab-bar-select-tab): Call tab-bar-tab-post-select-functions at the end.

2 years agoNew property 'context-menu-functions' (bug#62250)
Juri Linkov [Tue, 5 Mar 2024 16:50:51 +0000 (18:50 +0200)]
New property 'context-menu-functions' (bug#62250)

* lisp/iimage.el (iimage-mode-buffer): Set context-menu-functions
text property to '(image-context-menu)'.

* lisp/image.el (image-context-menu): New function.
(put-image): Set context-menu-functions overlay property
to '(image-context-menu)'.
(insert-image, insert-sliced-image): Set context-menu-functions
text property to '(image-context-menu)'.

* lisp/mouse.el (context-menu-map): Use mouse-posn-property
'context-menu-functions' and call its funs at the end.

2 years ago* lisp/net/dictionary.el: More fixes for dictionary-new-matching (bug#69312)
Juri Linkov [Tue, 5 Mar 2024 16:42:49 +0000 (18:42 +0200)]
* lisp/net/dictionary.el: More fixes for dictionary-new-matching (bug#69312)

(dictionary-new-matching): Change the order of standard calls
to be the same as in 'dictionary-new-search'.
Use new function 'dictionary-new-matching-internal'.
(dictionary-new-matching-internal): New function based on
'dictionary-new-search-internal'.

2 years ago* Makefile.in (uninstall): Clean-up type_hierarchy* files.
Andrea Corallo [Tue, 5 Mar 2024 14:21:44 +0000 (15:21 +0100)]
* Makefile.in (uninstall): Clean-up type_hierarchy* files.

2 years ago* Makefile.in (install-info): Install type_hierarchy* files as well.
Andrea Corallo [Tue, 5 Mar 2024 14:07:05 +0000 (15:07 +0100)]
* Makefile.in (install-info): Install type_hierarchy* files as well.

2 years ago* Copy type hierarchy representation to the info dir
Andrea Corallo [Tue, 5 Mar 2024 10:48:08 +0000 (11:48 +0100)]
* Copy type hierarchy representation to the info dir

* doc/lispref/Makefile.in (auxfiles)
($(buildinfodir)/type_hierarchy.txt)
($(buildinfodir)/type_hierarchy.jpg): New targets.
($(buildinfodir)/elisp.info): Add dependecy.

2 years agoAdapt tramp.texi
Michael Albinus [Tue, 5 Mar 2024 10:17:48 +0000 (11:17 +0100)]
Adapt tramp.texi

* doc/misc/tramp.texi (Quick Start Guide): Add androidsu.
(Inline methods): Make androidsu an own item.

2 years agodisass.el (disassemble-1): Minor simplification
Stefan Monnier [Tue, 5 Mar 2024 04:42:50 +0000 (23:42 -0500)]
disass.el (disassemble-1): Minor simplification

* lisp/emacs-lisp/disass.el (disassemble-1): Remove code for functions
of the form (lambda ARGS (byte-code ...)) which we don't use any
more nowadays.

2 years agocl-preloaded.el: Further fine-tuning
Stefan Monnier [Tue, 5 Mar 2024 04:12:29 +0000 (23:12 -0500)]
cl-preloaded.el: Further fine-tuning

* lisp/emacs-lisp/cl-preloaded.el (cl--direct-supertypes-of-type):
Fix some left over issues:
- Remove redundant `number-or-marker` from `marker`s parents.
- Add `function` to the types, since it was missing.
(cl--typeof-types): Add a warning for missing type info.

* admin/syncdoc-type-hierarchy.el (syncdoc-hierarchy): Fix parent of
`oclosure`.

* doc/lispref/type_hierarchy.txt:
* doc/lispref/type_hierarchy.jpg: Update.

2 years agoRearrange Android splash screen messages
Po Lu [Tue, 5 Mar 2024 03:23:27 +0000 (11:23 +0800)]
Rearrange Android splash screen messages

* lisp/startup.el (fancy-startup-tail, fancy-startup-screen)
(normal-splash-screen): Adjust for function renaming; move the
storage permissions notice to the top of the splash screen.

* lisp/term/android-win.el (android-after-splash-screen): Rename
from android-before-splash-screen and adjust layout lightly.

* src/android.c (android_wc_lookup_string): Terminate character
composition after a character is returned, whether it contain a
Unicode character or not.

2 years agosyncdoc-type-hierarchy.el: Adjust to changes in `cl-preloaded.el`
Stefan Monnier [Mon, 4 Mar 2024 18:24:34 +0000 (13:24 -0500)]
syncdoc-type-hierarchy.el: Adjust to changes in `cl-preloaded.el`

* admin/syncdoc-type-hierarchy.el (syncdoc-lispref-dir):
Use `macroexp-file-name`.
(syncdoc-hierarchy): New var.
(syncdoc-insert-dot-content, syncdoc-make-type-table): Use it.
(syncdoc-update-type-hierarchy): Don't crash if `dot` is absent.

2 years agoadmin/syncdoc-type-hierarchy.el: Move from `etc`
Stefan Monnier [Mon, 4 Mar 2024 17:02:45 +0000 (12:02 -0500)]
admin/syncdoc-type-hierarchy.el: Move from `etc`

AFAICT `admin` is where we keep these kinds of files.

2 years agoRevert "Update some native comp tests"
Stefan Monnier [Mon, 4 Mar 2024 16:19:08 +0000 (11:19 -0500)]
Revert "Update some native comp tests"

This reverts commit 4a0d430bdc3650ca3dfd8bdd14781764fbcbdc7e.

AFAICT that commit was made to accomodate regressions introduced
in the new `cl-preloaded.el` code and these have been fixed.

2 years agotramp-androidsu.el code cleanup
Michael Albinus [Mon, 4 Mar 2024 14:44:24 +0000 (15:44 +0100)]
tramp-androidsu.el code cleanup

* lisp/net/tramp-androidsu.el (tramp-androidsu-generate-wrapper):
Prefer #' notation for function names.
(tramp-androidsu-handle-copy-file)
(tramp-androidsu-handle-file-local-copy)
(tramp-androidsu-handle-make-symbolic-link)
(tramp-androidsu-handle-rename-file)
(tramp-androidsu-handle-write-region): Don't use a wrapper.
(tramp-adb-connection-local-default-ps-profile): Don't initialize,
this happens in tramp-db.el.

2 years agoRevert "Replace XSETSYMBOL with make_lisp_symbol"
Mattias Engdegård [Mon, 4 Mar 2024 13:14:05 +0000 (14:14 +0100)]
Revert "Replace XSETSYMBOL with make_lisp_symbol"

This reverts commit de6b1e1efb1a36c69e7a6e09297e1de5b1477121.

While it did simplify code, there aren't much in the way of technical
benefits the change at this time, and there were protest against the
unwarranted style change.

2 years agoRepair miscompilation of single-arg `apply` (bug#69533)
Mattias Engdegård [Mon, 4 Mar 2024 09:44:19 +0000 (10:44 +0100)]
Repair miscompilation of single-arg `apply` (bug#69533)

* lisp/emacs-lisp/byte-opt.el (byte-optimize-apply):
Don't optimise single-argument `apply`; it's a legacy construct.
* test/lisp/emacs-lisp/bytecomp-tests.el (bytecomp-tests--test-cases):
Add test case.

2 years ago; * lisp/vc/diff-mode.el (diff--refine-hunk): Escape literal `+`.
Mattias Engdegård [Sun, 3 Mar 2024 14:55:30 +0000 (15:55 +0100)]
; * lisp/vc/diff-mode.el (diff--refine-hunk): Escape literal `+`.

2 years ago; * etc/NEWS: add missing definite article
Mattias Engdegård [Tue, 27 Feb 2024 11:31:57 +0000 (12:31 +0100)]
; * etc/NEWS: add missing definite article

2 years agoAvoid crashes due to base-less indirect buffer
Eli Zaretskii [Mon, 4 Mar 2024 12:59:27 +0000 (14:59 +0200)]
Avoid crashes due to base-less indirect buffer

* src/buffer.c (Fkill_buffer): Prevent killing a buffer if its
indirect buffer refuses to be killed.  (Bug#69529)

2 years agoFix 'set-window-configuration' and 'window-state-put'
Martin Rudalics [Mon, 4 Mar 2024 09:33:49 +0000 (10:33 +0100)]
Fix 'set-window-configuration' and 'window-state-put'

Fix some bugs with 'window-state-put' (Bug#69093).  Add new
hook 'window-kept-windows-functions' (Bug#68235).

* doc/lispref/windows.texi (Window Configurations): Mention
'window-kept-windows-functions'.
(Window Hooks): Describe new abnormal hook
'window-kept-windows-functions'.
* src/marker.c (Fmarker_last_position): New function to return
the last position of a marker even if its buffer is now dead.
* src/window.c (Fset_window_configuration): If
'window-kept-windows-functions' is non-nil, do not delete any
window whose buffer is now dead but remember all such windows in
a list to pass to 'window-kept-windows-functions'.  Run
'window-kept-windows-functions' if it is non-nil.
(Vwindow_kept_windows_functions): New abnormal hook run by
Fset_window_configuration and 'window-state-put' with two
arguments - the frame whose configuration is restored and a list
of entries for each window whose buffer was found dead during
restoration.  Each entry is a list of four elements, the window,
the dead buffer, and the last know positions of the start and
point of that window.
* lisp/window.el (window-state-put-kept-windows)
(window-state-put-selected-window): New variables.
(window--state-put-2): Make sure buffer is live before restoring
its state.  Set 'window-state-put-selected-window' to state's
selected window.  If 'window-kept-windows-functions' is non-nil,
do not delete any windows whose buffer is found dead but
remember all such windows in a list to pass to
'window-kept-windows-functions'.
(window-state-put): Run 'window-kept-windows-functions' if it is
non-nil.  Select window recorded in
'window-state-put-selected-window'.

2 years ago; Fix last major-mode-remap-defaults change.
Basil L. Contovounesios [Mon, 4 Mar 2024 06:19:22 +0000 (07:19 +0100)]
; Fix last major-mode-remap-defaults change.

2 years ago(major-mode-remap(-defaults)): New var and function (bug#69191)
Stefan Monnier [Mon, 4 Mar 2024 04:08:16 +0000 (23:08 -0500)]
(major-mode-remap(-defaults)): New var and function (bug#69191)

While `major-mode-remap-alist` provides a way for users to indicate the
major mode of their choice, we need a similar variable for the
use of packages.

This patch adds a new `major-mode-remap-defaults` and changes various
packages to obey it or make use of it.
I think it nicely cleans the regexp duplication between CC-mode and
`c-ts-mode.el` and also makes it easier/cleaner for users to override
the changes made by `*-ts-mode.el`.

* lisp/files.el (major-mode-remap-defaults): New variable.
(major-mode-remap): New function.
(set-auto-mode-0): Use it.
* doc/lispref/modes.texi (Auto Major Mode): Document them.

* lisp/textmodes/tex-mode.el (tex--redirect-to-submode):
Use `major-mode-remap`.
(major-mode-remap-defaults): Set it to remap AUCTeX modes by default.
* lisp/progmodes/ruby-ts-mode.el (auto-mode-alist): Leave it alone.
(major-mode-remap-defaults): Set this one instead.
* lisp/progmodes/c-ts-mode.el (c-or-c++-ts-mode): Use `major-mode-remap`.
(auto-mode-alist): Leave it alone.
(major-mode-remap-defaults): Set this one instead.
* lisp/org/ox.el (org-export-to-buffer): Modernize docstring accordingly.
* lisp/progmodes/cc-mode.el (c-or-c++-mode):
* lisp/org/ox-latex.el (org-latex-export-as-latex):
* lisp/org/ox-koma-letter.el (org-koma-letter-export-as-latex):
* lisp/org/ox-beamer.el (org-beamer-export-as-latex):
Use `major-mode-remap` when available.

2 years agoUpdate tramp-androidsu
Po Lu [Mon, 4 Mar 2024 03:21:53 +0000 (11:21 +0800)]
Update tramp-androidsu

* doc/misc/tramp.texi (Quick Start Guide): Remove documentation
pertaining to tramp-androidsu.el.
(Inline methods): Document it here instead.

* lisp/net/tramp-androidsu.el
(tramp-androidsu-mount-global-namespace)
(tramp-androidsu-remote-path, tramp-androidsu-local-shell-name)
(tramp-androidsu-local-tmp-directory, add-to-list)
(tramp-androidsu-maybe-open-connection)
(tramp-androidsu-handle-access-file)
(tramp-androidsu-handle-add-name-to-file)
(tramp-androidsu-handle-copy-directory)
(tramp-androidsu-sh-handle-copy-file)
(tramp-androidsu-handle-copy-file)
(tramp-androidsu-adb-handle-delete-directory)
(tramp-androidsu-handle-delete-directory)
(tramp-androidsu-adb-handle-delete-file)
(tramp-androidsu-handle-delete-file)
(tramp-androidsu-handle-directory-file-name)
(tramp-androidsu-handle-directory-files)
(tramp-androidsu-adb-handle-directory-files-and-attributes)
(tramp-androidsu-handle-directory-files-and-attributes)
(tramp-androidsu-handle-dired-uncache)
(tramp-androidsu-adb-handle-exec-path)
(tramp-androidsu-handle-exec-path)
(tramp-androidsu-handle-expand-file-name)
(tramp-androidsu-handle-file-accessible-directory-p)
(tramp-androidsu-adb-handle-file-attributes)
(tramp-androidsu-handle-file-attributes)
(tramp-androidsu-handle-file-directory-p)
(tramp-androidsu-handle-file-equal-p)
(tramp-androidsu-adb-handle-file-executable-p)
(tramp-androidsu-handle-file-executable-p)
(tramp-androidsu-adb-handle-file-exists-p)
(tramp-androidsu-handle-file-exists-p)
(tramp-androidsu-handle-file-group-gid)
(tramp-androidsu-handle-file-in-directory-p)
(tramp-androidsu-sh-handle-file-local-copy)
(tramp-androidsu-handle-file-local-copy)
(tramp-androidsu-handle-file-locked-p)
(tramp-androidsu-handle-file-modes)
(tramp-androidsu-adb-handle-file-name-all-completions)
(tramp-androidsu-handle-file-name-all-completions)
(tramp-androidsu-handle-file-name-as-directory)
(tramp-androidsu-handle-file-name-case-insensitive-p)
(tramp-androidsu-handle-file-name-completion)
(tramp-androidsu-handle-file-name-directory)
(tramp-androidsu-handle-file-name-nondirectory)
(tramp-androidsu-handle-file-newer-than-file-p)
(tramp-androidsu-handle-file-notify-add-watch)
(tramp-androidsu-handle-file-notify-rm-watch)
(tramp-androidsu-handle-file-notify-valid-p)
(tramp-androidsu-adb-handle-file-readable-p)
(tramp-androidsu-handle-file-readable-p)
(tramp-androidsu-handle-file-regular-p)
(tramp-androidsu-handle-file-remote-p)
(tramp-androidsu-handle-file-selinux-context)
(tramp-androidsu-handle-file-symlink-p)
(tramp-androidsu-adb-handle-file-system-info)
(tramp-androidsu-handle-file-system-info)
(tramp-androidsu-handle-file-truename)
(tramp-androidsu-handle-file-user-uid)
(tramp-androidsu-adb-handle-file-writable-p)
(tramp-androidsu-handle-file-writable-p)
(tramp-androidsu-handle-find-backup-file-name)
(tramp-androidsu-handle-insert-directory)
(tramp-androidsu-handle-insert-file-contents)
(tramp-androidsu-handle-list-system-processes)
(tramp-androidsu-handle-load, tramp-androidsu-handle-lock-file)
(tramp-androidsu-handle-make-auto-save-file-name)
(tramp-androidsu-adb-handle-make-directory)
(tramp-androidsu-handle-make-directory)
(tramp-androidsu-handle-make-lock-file-name)
(tramp-androidsu-handle-make-nearby-temp-file)
(tramp-androidsu-make-process)
(tramp-androidsu-sh-handle-make-symbolic-link)
(tramp-androidsu-handle-make-symbolic-link)
(tramp-androidsu-handle-memory-info)
(tramp-androidsu-handle-process-attributes)
(tramp-androidsu-adb-handle-process-file)
(tramp-androidsu-handle-process-file)
(tramp-androidsu-sh-handle-rename-file)
(tramp-androidsu-handle-rename-file)
(tramp-androidsu-adb-handle-set-file-modes)
(tramp-androidsu-handle-set-file-modes)
(tramp-androidsu-adb-handle-set-file-times)
(tramp-androidsu-handle-set-file-times)
(tramp-androidsu-handle-set-visited-file-modtime)
(tramp-androidsu-handle-shell-command)
(tramp-androidsu-handle-start-file-process)
(tramp-androidsu-handle-substitute-in-file-name)
(tramp-androidsu-handle-temporary-file-directory)
(tramp-androidsu-adb-handle-get-remote-gid)
(tramp-androidsu-handle-get-remote-gid)
(tramp-androidsu-adb-handle-get-remote-groups)
(tramp-androidsu-handle-get-remote-groups)
(tramp-androidsu-adb-handle-get-remote-uid)
(tramp-androidsu-handle-get-remote-uid)
(tramp-androidsu-handle-unlock-file)
(tramp-androidsu-handle-verify-visited-file-modtime)
(tramp-androidsu-sh-handle-write-region)
(tramp-androidsu-handle-write-region)
(tramp-androidsu-file-name-handler-alist): Make hard-coded
executable and file names defconsts, remove redundant wrapper
functions and remove names of wrapped functions from their
wrappers.

2 years agoRevert "ox-texinfo:: Require only TEXINFO_DIR_CATEGORY"
Stefan Monnier [Mon, 4 Mar 2024 03:09:24 +0000 (22:09 -0500)]
Revert "ox-texinfo:: Require only TEXINFO_DIR_CATEGORY"

This reverts commit 5254c582efb3e7171e955dde653e7530d2d3ffef.

2 years agoRevert "Set org-macro-templates more lazily"
Stefan Monnier [Mon, 4 Mar 2024 03:09:19 +0000 (22:09 -0500)]
Revert "Set org-macro-templates more lazily"

This reverts commit 99483e214fdafa76e8001c7009dff13a76c33f32.

2 years ago(cl--typeof-types): Rework to fix some regressions
Stefan Monnier [Sun, 3 Mar 2024 23:08:50 +0000 (18:08 -0500)]
(cl--typeof-types): Rework to fix some regressions

Initialize the variables directly in their declaration, so
there no time where they exist but aren't yet initialized.
This also allows us to mark `cl--typeof-types` as a `defconst` again.

More importantly, specify the DAG by direct supertypes rather
than direct subtypes.  This is slightly less compact, but it's
necessary to let us specify the *order* of the supertypes,
which is necessary for example to preserve the desired ordering
of methods when several methods can be applied.

Fix a few more regressions, such as removing `atom` from the parents
of `function` since some lists are considered as functions,
adding `number-or-marker` as supertype of `integer-or-marker`,
and re-adding `native-comp-unit`.

I carefully compared all elements of `cl--typeof-types` to make
sure they are the same as before (with one exception for `null`).

* lisp/emacs-lisp/cl-preloaded.el (cl--type-hierarchy): Delete var.
(cl--direct-supertypes-of-type, cl--typeof-types):
Initialize directly in the declaration.
(cl--supertypes-lane, cl--supertypes-lanes-res): Delete vars.
(cl--supertypes-for-typeof-types-rec)
(cl--supertypes-for-typeof-types): Delete functions.

2 years agoSet org-macro-templates more lazily
Stefan Monnier [Sat, 2 Mar 2024 20:23:17 +0000 (15:23 -0500)]
Set org-macro-templates more lazily

2 years agoox-texinfo:: Require only TEXINFO_DIR_CATEGORY
Stefan Monnier [Sat, 2 Mar 2024 19:48:29 +0000 (14:48 -0500)]
ox-texinfo:: Require only TEXINFO_DIR_CATEGORY

Until now @dircategory/@direntry entries were added only if
both TEXINFO_DIR_CATEGORY and TEXINFO_DIR_TITLE were set.
And the setting of TEXINFO_DIR_TITLE had to be careful to
provide exactly the right syntax.

This patch changes various things in this regard:
- Only require TEXINFO_DIR_CATEGORY in order to generate
  `@dircategory` and `@direntry`.
- Use the document title by default if TEXINFO_DIR_DESC is missing.
- Use the filename by default when TEXINFO_DIR_TITLE is missing.
- Try and make it harder to provide a direntry that does not
  have the right format or refers to a different filename than
  the one we're outputting to.

* lisp/org/ox-texinfo.el: Remove redundant `:group` arguments.
Prefer #' to quote function names.
(org-texinfo-template): Use sane defaults for `@direntry`.

* doc/misc/org.org (Texinfo specific export settings): Adjust accordingly.

2 years ago* lisp/net/dictionary.el (dictionary-display-match-result): More fixes.
Juri Linkov [Sun, 3 Mar 2024 17:49:36 +0000 (19:49 +0200)]
* lisp/net/dictionary.el (dictionary-display-match-result): More fixes.

Remove 'dictionary-pre-buffer' that was moved to
'dictionary-new-matching' in the previous commit (bug#69312).

2 years ago* lisp/net/dictionary.el (dictionary-new-matching): Add dictionary-pre-buffer.
Juri Linkov [Sun, 3 Mar 2024 16:58:47 +0000 (18:58 +0200)]
* lisp/net/dictionary.el (dictionary-new-matching): Add dictionary-pre-buffer.

This is necessary to prepare the dictionary buffer for further processing
that also includes setting buffer-read-only to nil to be able to insert text.
(bug#69312)

2 years ago* test/lisp/emacs-lisp/comp-cstr-tests.el (comp-cstr-test-62): Revert change.
Andrea Corallo [Sun, 3 Mar 2024 15:58:25 +0000 (16:58 +0100)]
* test/lisp/emacs-lisp/comp-cstr-tests.el (comp-cstr-test-62): Revert change.

2 years ago* Fix 'cl--typeof-types' computation
Andrea Corallo [Sun, 3 Mar 2024 15:33:53 +0000 (16:33 +0100)]
* Fix 'cl--typeof-types' computation

* lisp/emacs-lisp/cl-preloaded.el (cl--supertypes-lane)
(cl--supertypes-lanes-res): Define vars.
(cl--supertypes-for-typeof-types-rec): Define function.
(cl--supertypes-for-typeof-types): Reimplement.

2 years agoUse funcall on function values in gnus-agent.el
Eric Abrahamsen [Sun, 3 Mar 2024 02:07:36 +0000 (18:07 -0800)]
Use funcall on function values in gnus-agent.el

See bug#68931

* lisp/gnus/gnus-agent.el (gnus-category-make-function-1): Don't just
pass function values in to be byte compiled, wrap them in funcall first.

2 years ago* lisp/net/dictionary.el: Better handling of messages and errors.
Juri Linkov [Sat, 2 Mar 2024 17:31:07 +0000 (19:31 +0200)]
* lisp/net/dictionary.el: Better handling of messages and errors.

(dictionary-do-search, dictionary-do-matching): Insert formatted
messages to the top of the output buffer instead of displaying
transient messages in the echo area (bug#69312).
(dictionary-do-matching, dictionary-lookup-definition)
(dictionary-popup-matching-words): Use 'user-error'
instead of 'error' for non-technical errors.

2 years ago* lisp/replace.el (perform-replace): Accept default bindings in lookup-key.
Juri Linkov [Sat, 2 Mar 2024 17:22:30 +0000 (19:22 +0200)]
* lisp/replace.el (perform-replace): Accept default bindings in lookup-key.

Set ACCEPT-DEFAULT arg of lookup-key to t (bug#69342).
This will allow the users to ignore unbound keys with
‘(define-key query-replace-map [t] 'ignore)’.

2 years ago* lisp/buff-menu.el (Buffer-menu-marked-buffers): Add save-excursion.
Juri Linkov [Sat, 2 Mar 2024 17:15:14 +0000 (19:15 +0200)]
* lisp/buff-menu.el (Buffer-menu-marked-buffers): Add save-excursion.

2 years ago* doc/lispref/modes.texi (Tabulated List Mode): Unindent example.
Juri Linkov [Sat, 2 Mar 2024 17:12:29 +0000 (19:12 +0200)]
* doc/lispref/modes.texi (Tabulated List Mode): Unindent example.

2 years agoMerge from origin/emacs-29
Eli Zaretskii [Sat, 2 Mar 2024 08:43:14 +0000 (03:43 -0500)]
Merge from origin/emacs-29

ae80192d97b ; * src/buffer.c (Fmake_indirect_buffer): Doc fix.
2549eabc97f Fix typos in vnvni.el.
647cecc853e ; * lisp/vc/vc.el (vc-clone): Fix wording of doc string.
383ccf6d51f Avoid assertion violations in bidi.c
b7cef701cb5 * lisp/files.el (hack-one-local-variable): Use `set-auto-...
05308001759 Fix infinite recursion in gdb-mi.el

2 years agoAdd new input method "english-colemak"
Yoshiku Onu [Thu, 29 Feb 2024 08:29:44 +0000 (13:29 +0500)]
Add new input method "english-colemak"

* lisp/leim/quail/latin-post.el ("english-colemak"): New input
method.  (Bug#69471)

* etc/NEWS: Announce it.

Copyright-paperwork-exempt: yes

2 years ago* lisp/language/japanese.el (map): Fix typo (bug#69494).
Kazuhiro Ito [Fri, 1 Mar 2024 23:49:15 +0000 (08:49 +0900)]
* lisp/language/japanese.el (map): Fix typo (bug#69494).

2 years agoFix Japanese language environment on Cygwin and MS-Windows
Kazuhiro Ito [Fri, 1 Mar 2024 23:44:56 +0000 (08:44 +0900)]
Fix Japanese language environment on Cygwin and MS-Windows

* lisp/language/japan-util.el
(setup-japanese-environment-internal): Prefer UTF-8 for Cygwin and
other Posix hosts; prefer Codepage 932 on DOS/Windows.  (Bug#69493)

2 years agoImplement dead key combination on Android
Po Lu [Sat, 2 Mar 2024 06:04:56 +0000 (14:04 +0800)]
Implement dead key combination on Android

* src/android.c (android_init_key_character_map)
(android_get_dead_char): New functions.
(android_wc_lookup_string): New argument COMPOSE_STATE.  Ignore
key events with the COMBINING_ACCENT flag set while recording
their character values there, and combine such characters with
the key event when processing a subsequent key event.

* src/androidgui.h (struct android_compose_status): New
structure.

* src/androidterm.c (handle_one_android_event): Port dead key
combination code from X.  (bug#69321)

2 years ago* lisp/emacs-lisp/cl-preloaded.el (cl--typeof-types): Define as var.
Andrea Corallo [Fri, 1 Mar 2024 17:56:02 +0000 (18:56 +0100)]
* lisp/emacs-lisp/cl-preloaded.el (cl--typeof-types): Define as var.

2 years agoVerilog-mode update from upstream https://github.com/veripool/verilog-mode
Wilson Snyder [Fri, 1 Mar 2024 17:11:07 +0000 (12:11 -0500)]
Verilog-mode update from upstream https://github.com/veripool/verilog-mode

* lisp/progmodes/verilog-mode.el (verilog-auto-inst)
(verilog-auto-inst-param): Remove intended formfeeds.  Our ability to
detect unintended formfeeds elsewhere outweighs their limited utility here.
Contributed by Mattias Engdegård.
(verilog-at-constraint-p)
(verilog-at-struct-mv-p, verilog-at-struct-p, verilog-calc-1)
(verilog-in-case-region-p, verilog-in-fork-region-p)
(verilog-in-generate-region-p, verilog-set-auto-endcomments):
Fix indentation problem when there is a signal named "module_something"
(#1861).  Cleanup RexEx groupings.
(verilog-read-sub-decls-expr):
Fix apostrophe parser in AUTOWIRE (#1854) (#1855).
(verilog-auto-inst-port): Fix AUTOINST
multi-dimensional array [] substitution.  Reported by Caleb Begly.
(verilog-property-re, verilog-beg-of-statement, verilog-calc-1):
Concurrent SVA statement pattern-matching learns 'restrict property' and
'cover sequence' expression for proper indentation around those constructs. This
addresses more patterns in IEEE 1800-2017's 'concurrent_sasertion_statement'
grammar.
(verilog-read-sub-decls-line):
Fix `verilog-auto-ignore-concat' with parenthesis signals.
Reported by Dmitri Sorkin.
(verilog-simplify-range-expression): Fix
`verilog-auto-inst-param-value' confusing structure selects.
Reported by Mike Bertone.

2 years agoFix documentation of last change
Eli Zaretskii [Fri, 1 Mar 2024 08:52:50 +0000 (10:52 +0200)]
Fix documentation of last change

* doc/lispref/objects.texi (Type Hierarchy): Fix wording and
markup.
* doc/lispref/elisp.texi (Top): Add new node to @detailmenu.

2 years ago; * src/buffer.c (Fmake_indirect_buffer): Doc fix.
Eli Zaretskii [Fri, 1 Mar 2024 08:32:32 +0000 (10:32 +0200)]
; * src/buffer.c (Fmake_indirect_buffer): Doc fix.

2 years agoMerge branch 'feature/type-hierarchy' into 'master'
Andrea Corallo [Fri, 1 Mar 2024 08:30:44 +0000 (09:30 +0100)]
Merge branch 'feature/type-hierarchy' into 'master'

2 years ago* doc/lispref/objects.texi (Type Hierarchy): Small improvements
Andrea Corallo [Fri, 1 Mar 2024 08:27:22 +0000 (09:27 +0100)]
* doc/lispref/objects.texi (Type Hierarchy): Small improvements

2 years ago* Fix compilation warning in 'cl--supertypes-for-typeof-types'
Andrea Corallo [Fri, 1 Mar 2024 08:16:38 +0000 (09:16 +0100)]
* Fix compilation warning in 'cl--supertypes-for-typeof-types'

* lisp/emacs-lisp/cl-preloaded.el (cl--supertypes-for-typeof-types): Fix
warning.

2 years agoFix typos in vnvni.el.
Dan Jacobson [Fri, 1 Mar 2024 04:44:44 +0000 (12:44 +0800)]
Fix typos in vnvni.el.

* lisp/leim/quail/vnvni.el ("vietnamese-vni"): Fix typos.  (Bug#69485)

Copyright-paperwork-exempt: yes

2 years ago; Improve documentation of last changeset (bug#69305)
Eli Zaretskii [Thu, 29 Feb 2024 18:57:12 +0000 (20:57 +0200)]
; Improve documentation of last changeset (bug#69305)

* etc/NEWS (Example):
* doc/lispref/modes.texi (Tabulated List Mode): Improve
documentation of 'Buffer-menu-group-by' and
'tabulated-list-groups'.

* lisp/buff-menu.el (Buffer-menu-group-by): Doc fix.

2 years agoAdd tabulated-list-groups and Buffer-menu-group-by (bug#69305)
Juri Linkov [Thu, 29 Feb 2024 17:50:04 +0000 (19:50 +0200)]
Add tabulated-list-groups and Buffer-menu-group-by (bug#69305)

* doc/lispref/modes.texi (Tabulated List Mode):
Add defvar tabulated-list-groups.

* lisp/buff-menu.el (Buffer-menu-group-by): New defcustom.
(Buffer-menu-unmark-all-buffers): Use tabulated-list-get-entry
to check whether the current line contains an entry.
(list-buffers-noselect): Enable outline-minor-mode
for tabulated-list-groups.
(list-buffers--refresh): When Buffer-menu-group-by is non-nil,
set tabulated-list-groups.
(Buffer-menu-group-by-mode, Buffer-menu-group-by-root):
New functions.

* lisp/emacs-lisp/tabulated-list.el (tabulated-list-groups):
New buffer-local variable.
(tabulated-list-print-fake-header): Add distinct overlay
property 'fake-header'.
(tabulated-list-header-overlay-p): Filter out overlays that
don't have the property 'fake-header'.
(tabulated-list-print): Use the variable 'tabulated-list-groups'
to sort entries in groups separately.
(tabulated-list-print-entries): New function factored out from
'tabulated-list-print'.

* test/lisp/emacs-lisp/tabulated-list-tests.el (tabulated-list-groups):
New test.

2 years agoMerge branch 'master' of git.savannah.gnu.org:/srv/git/emacs
Eli Zaretskii [Thu, 29 Feb 2024 16:35:03 +0000 (18:35 +0200)]
Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs

2 years ago; Tweak recently-added NEWS entry.
Eli Zaretskii [Thu, 29 Feb 2024 16:25:12 +0000 (18:25 +0200)]
; Tweak recently-added NEWS entry.

2 years ago; Fix some wording in recent obarray changes.
Basil L. Contovounesios [Thu, 29 Feb 2024 15:21:05 +0000 (16:21 +0100)]
; Fix some wording in recent obarray changes.

2 years agoImprove documentation of recent changes in comp-run.el
Eli Zaretskii [Thu, 29 Feb 2024 13:37:19 +0000 (15:37 +0200)]
Improve documentation of recent changes in comp-run.el

* lisp/emacs-lisp/comp-run.el
(native-comp-async-warnings-errors-kind): Rename from
'native-comp-async-report-warnings-errors-kind', and rename
'importants' to 'important'; all users changed.  Doc fix.

* etc/NEWS: Announce the new option.

2 years ago* etc/TODO (Native compiler improvements): Remove an entry as completed.
Andrea Corallo [Thu, 29 Feb 2024 13:15:30 +0000 (14:15 +0100)]
* etc/TODO (Native compiler improvements): Remove an entry as completed.

2 years ago* Add 'native-comp-async-report-warnings-errors-kind'
Andrea Corallo [Thu, 29 Feb 2024 10:25:00 +0000 (11:25 +0100)]
* Add 'native-comp-async-report-warnings-errors-kind'

* lisp/emacs-lisp/comp-run.el (native-comp-async-report-warnings-errors-kind):
Add new customize.

2 years ago* Improve 'native-comp-async-report-warnings-errors' tag
Andrea Corallo [Thu, 29 Feb 2024 10:04:07 +0000 (11:04 +0100)]
* Improve 'native-comp-async-report-warnings-errors' tag

* lisp/emacs-lisp/comp-run.el (native-comp-async-report-warnings-errors):
Improve tag.

2 years agoPacify more docstring control char warnings
Robert Pluim [Thu, 29 Feb 2024 08:29:04 +0000 (09:29 +0100)]
Pacify more docstring control char warnings

* lisp/org/org-macs.el (org-split-string): Escape control chars.
* lisp/org/ox-latex.el (org-latex-guess-babel-language): And here.

2 years agoFix subprocess creation in directories managed by tramp-androidsu
Po Lu [Thu, 29 Feb 2024 02:59:09 +0000 (10:59 +0800)]
Fix subprocess creation in directories managed by tramp-androidsu

* lisp/net/tramp-androidsu.el
(tramp-androidsu-maybe-open-connection): Set connection property
remote-namespace to t or nil subject to whether su runs in the
global mount namespace.
(tramp-androidsu-adb-handle-make-process): Delete function.
(tramp-androidsu-make-process): New function.
(tramp-androidsu-file-name-handler-alist): Switch to
tramp-androidsu-make-process.

2 years agoRun syncdoc-type-hierarchy.el to follow obarray type introduction
Andrea Corallo [Wed, 28 Feb 2024 19:48:49 +0000 (20:48 +0100)]
Run syncdoc-type-hierarchy.el to follow obarray type introduction

* doc/lispref/type_hierarchy.jpg: Update.
* doc/lispref/type_hierarchy.txt: Likewise.

2 years agoMerge remote-tracking branch 'origin/master' into 'feature/type-hierarchy'
Andrea Corallo [Wed, 28 Feb 2024 19:47:57 +0000 (20:47 +0100)]
Merge remote-tracking branch 'origin/master' into 'feature/type-hierarchy'

2 years ago* lisp/emacs-lisp/cl-macs.el (cl-deftype-satisfies): Add 'symbol-with-pos'.
Andrea Corallo [Wed, 28 Feb 2024 19:38:30 +0000 (20:38 +0100)]
* lisp/emacs-lisp/cl-macs.el (cl-deftype-satisfies): Add 'symbol-with-pos'.

2 years ago* lisp/emacs-lisp/comp.el (comp-known-predicates): Add 'symbol-with-pos-p'.
Andrea Corallo [Wed, 28 Feb 2024 19:38:02 +0000 (20:38 +0100)]
* lisp/emacs-lisp/comp.el (comp-known-predicates): Add 'symbol-with-pos-p'.

2 years ago; Fix :type of text-mode-ispell-word-completion.
Basil L. Contovounesios [Wed, 28 Feb 2024 16:02:41 +0000 (17:02 +0100)]
; Fix :type of text-mode-ispell-word-completion.

2 years agoPacify some docstring control char warnings
Basil L. Contovounesios [Wed, 28 Feb 2024 15:38:21 +0000 (16:38 +0100)]
Pacify some docstring control char warnings

Other instances are discussed in the following thread:
https://lists.gnu.org/r/emacs-devel/2024-02/msg00797.html

* lisp/allout.el (allout-command-prefix): Declare :type as
key-sequence.  Mark up key sequences in docstring.
* lisp/auth-source.el (auth-source--decode-octal-string):
* lisp/ffap.el (ffap-search-backward-file-end):
* lisp/gnus/gnus-art.el (gnus-page-delimiter):
* lisp/gnus/nnheader.el (nnheader-strip-cr):
* lisp/proced.el (proced-log):
* lisp/progmodes/idlw-shell.el (idlwave-shell-prompt-pattern):
* lisp/url/url-http.el (url-http-clean-headers):
* lisp/vcursor.el (vcursor-interpret-input): Quote control
characters in docstrings.

2 years agoRevert change in tramp-adb-send-command
Michael Albinus [Wed, 28 Feb 2024 15:31:25 +0000 (16:31 +0100)]
Revert change in tramp-adb-send-command

* lisp/net/tramp-adb.el (tramp-adb-send-command): Revert check for
`tramp-androidsu-method'.  There is no need to restrict the check.

2 years ago; * .mailmap: Fix GitHub address (bug#68559#170).
Basil L. Contovounesios [Wed, 28 Feb 2024 14:30:41 +0000 (15:30 +0100)]
; * .mailmap: Fix GitHub address (bug#68559#170).

2 years agoFix Python shell completion test failures
Liu Hui [Wed, 21 Feb 2024 04:40:06 +0000 (12:40 +0800)]
Fix Python shell completion test failures

* test/lisp/progmodes/python-tests.el
(python-tests-with-temp-buffer-with-shell): Set XDG_CACHE_HOME
to a temporary directory.
(python-tests--pythonstartup-file): New function.
(python-shell-completion-at-point-jedi-completer)
(python-shell-completion-at-point-ipython): Use Jedi as the
native completion backend when possible.  (bug#68559)

2 years ago; Update Lisp_Obarray hash for CHECK_STRUCTS
Basil L. Contovounesios [Wed, 28 Feb 2024 10:35:04 +0000 (11:35 +0100)]
; Update Lisp_Obarray hash for CHECK_STRUCTS

This follows commit 462d8ba813 of 2024-02-23
"Add a proper type for obarrays".

2 years ago; Fix last change
Po Lu [Wed, 28 Feb 2024 04:23:32 +0000 (12:23 +0800)]
; Fix last change

* lisp/net/tramp-androidsu.el
(tramp-androidsu-handle-write-region): Delete function.
(tramp-androidsu-sh-handle-write-region): New function.
(tramp-androidsu-file-name-handler-alist): Avoid infinite
recursion by replacing handle-write-region with the tramp-sh
implementation.

2 years agoLift restrictions on `tramp-androidsu's app data access
Po Lu [Wed, 28 Feb 2024 04:05:59 +0000 (12:05 +0800)]
Lift restrictions on `tramp-androidsu's app data access

* lisp/net/tramp-adb.el (tramp-adb-handle-copy-file): Remove
code now unnecessary.

* lisp/net/tramp-androidsu.el
(tramp-androidsu-mount-global-namespace): New user option.
(tramp-androidsu-su-mm-supported): New variable.
(tramp-androidsu-maybe-open-connection): Detect whether su
supports the -mm option, and provide it if so.
(tramp-androidsu-adb-handle-copy-file)
(tramp-androidsu-adb-handle-rename-file): Delete functions.
(tramp-androidsu-sh-handle-copy-file)
(tramp-androidsu-sh-handle-rename-file): New functions.
(tramp-androidsu-file-name-handler-alist): Switch to tramp-sh's
copy and rename handlers.

2 years agovhdl-mode.el: Reduce use of `eval`
Stefan Monnier [Tue, 27 Feb 2024 13:24:45 +0000 (08:24 -0500)]
vhdl-mode.el: Reduce use of `eval`

* lisp/progmodes/vhdl-mode.el (vhdl--re2-region): New function.
(vhdl--signal-regions-functions): New constant, extracted from
`vhdl-update-sensitivity-list`.
(vhdl-update-sensitivity-list): Use it.

2 years ago; * lisp/vc/vc.el (vc-clone): Fix wording of doc string.
Eli Zaretskii [Tue, 27 Feb 2024 13:11:58 +0000 (15:11 +0200)]
; * lisp/vc/vc.el (vc-clone): Fix wording of doc string.

2 years ago; * src/data.c (Ftype_of): Update comment.
Andrea Corallo [Tue, 27 Feb 2024 11:20:31 +0000 (12:20 +0100)]
; * src/data.c (Ftype_of): Update comment.

2 years agoAvoid assertion violations in bidi.c
Eli Zaretskii [Tue, 27 Feb 2024 11:12:15 +0000 (13:12 +0200)]
Avoid assertion violations in bidi.c

* src/bidi.c (bidi_resolve_brackets): Move assertion about
'resolved_level' to where it belongs.  This avoids unnecessary
aborts when the character is not a bracket type and doesn't need
BPA resolution.  (Bug#69421)

2 years agoAllow vc-git-clone to check-out arbitrary revisions
Philip Kaludercic [Tue, 27 Feb 2024 09:32:08 +0000 (10:32 +0100)]
Allow vc-git-clone to check-out arbitrary revisions

* lisp/vc/vc-git.el (vc-git-clone): If "git clone --branch"
fails, then clone the repository regularly and checkout the
requested revision.

2 years agoDisable process tracing before launching /system/bin/su
Po Lu [Tue, 27 Feb 2024 02:05:56 +0000 (10:05 +0800)]
Disable process tracing before launching /system/bin/su

* lisp/net/tramp-androidsu.el
(tramp-androidsu-maybe-open-connection): Disable process tracing
around start-process, that the setuid su binary may be started
regardless of its status.

2 years agotex-mode.el: Increase depth of braces highlighted in $...$ blocks
Stefan Monnier [Mon, 26 Feb 2024 19:32:08 +0000 (14:32 -0500)]
tex-mode.el: Increase depth of braces highlighted in $...$ blocks

* lisp/textmodes/tex-mode.el (tex-font-lock-keywords-1): Increase depth
of braces supported in $...$ blocks.
(tex-font-lock-keywords-2, tex-font-lock-syntactic-face-function):
Refer directly to font-lock faces.

2 years agoMake tree-sitter tests work installed in .emacs.d/tree-sitter
Mattias Engdegård [Mon, 26 Feb 2024 17:42:44 +0000 (18:42 +0100)]
Make tree-sitter tests work installed in .emacs.d/tree-sitter

* test/Makefile.in (ert_opts):
Set treesit-extra-load-path, because HOME is not valid when running
tests from the Makefile (bug#69405).

2 years ago(edebug-tests-trivial-comma): Avoid interaction (bug#69406)
Stefan Monnier [Mon, 26 Feb 2024 17:33:35 +0000 (12:33 -0500)]
(edebug-tests-trivial-comma): Avoid interaction (bug#69406)

* test/lisp/emacs-lisp/edebug-tests.el (edebug-tests-trivial-backquote):
Don't use obsolete `edebug-eval-defun`.
(edebug-tests-trivial-comma): Use `inhibit-read-only`; don't use
obsolete `edebug-eval-defun`; and fix bug#69406 by binding
`eval-expression-debug-on-error`.

2 years agoFix display of reordered Arabic text
Eli Zaretskii [Mon, 26 Feb 2024 17:26:04 +0000 (19:26 +0200)]
Fix display of reordered Arabic text

* src/xdisp.c (compute_stop_pos): Fix a year-old thinko in
handling auto-composed characters.  It was introduced as part
of solving bug#62780, which optimized the search for composable
characters.  (Bug#69384)

2 years ago; Delete trailing whitespace
Po Lu [Mon, 26 Feb 2024 06:13:49 +0000 (14:13 +0800)]
; Delete trailing whitespace

* lisp/net/tramp-androidsu.el
(tramp-androidsu-maybe-open-connection): Delete trailing
whitespace.

2 years agoIntroduce a new TRAMP method `androidsu'
Po Lu [Mon, 26 Feb 2024 06:13:14 +0000 (14:13 +0800)]
Introduce a new TRAMP method `androidsu'

* doc/misc/tramp.texi (Quick Start Guide): Document the new
method.

* etc/NEWS (Tramp): Announce new method.

* lisp/net/tramp-adb.el (tramp-adb-handle-file-attributes)
(tramp-adb-handle-directory-files-and-attributes)
(tramp-adb-handle-file-name-all-completions): Properly print
ls's exit status in the presence of a pipe.
(tramp-adb-handle-copy-file): If the androidsu backend is in
use, call cp rather than adb push.
(tramp-adb-send-command): Disable ADB-specific code under
androidsu.
(tramp-adb-send-command-and-check): New argument
COMMAND-AUGMENTED-P.

* lisp/net/tramp-androidsu.el (tramp, tramp-adb, tramp-sh)
(tramp-androidsu-method, add-to-list)
(tramp-androidsu-maybe-open-connection)
(tramp-androidsu-generate-wrapper)
(tramp-androidsu-handle-access-file)
(tramp-androidsu-handle-add-name-to-file)
(tramp-androidsu-handle-copy-directory)
(tramp-androidsu-adb-handle-copy-file)
(tramp-androidsu-adb-handle-delete-directory)
(tramp-androidsu-adb-handle-delete-file)
(tramp-androidsu-handle-directory-file-name)
(tramp-androidsu-handle-directory-files)
(tramp-androidsu-adb-handle-directory-files-and-attributes)
(tramp-androidsu-handle-dired-uncache)
(tramp-androidsu-adb-handle-exec-path)
(tramp-androidsu-handle-expand-file-name)
(tramp-androidsu-handle-file-accessible-directory-p)
(tramp-androidsu-adb-handle-file-attributes)
(tramp-androidsu-handle-file-directory-p)
(tramp-androidsu-handle-file-equal-p)
(tramp-androidsu-adb-handle-file-executable-p)
(tramp-androidsu-adb-handle-file-exists-p)
(tramp-androidsu-handle-file-group-gid)
(tramp-androidsu-handle-file-in-directory-p)
(tramp-androidsu-sh-handle-file-local-copy)
(tramp-androidsu-handle-file-locked-p)
(tramp-androidsu-handle-file-modes)
(tramp-androidsu-adb-handle-file-name-all-completions)
(tramp-androidsu-handle-file-name-as-directory)
(tramp-androidsu-handle-file-name-case-insensitive-p)
(tramp-androidsu-handle-file-name-completion)
(tramp-androidsu-handle-file-name-directory)
(tramp-androidsu-handle-file-name-nondirectory)
(tramp-androidsu-handle-file-newer-than-file-p)
(tramp-androidsu-handle-file-notify-add-watch)
(tramp-androidsu-handle-file-notify-rm-watch)
(tramp-androidsu-handle-file-notify-valid-p)
(tramp-androidsu-adb-handle-file-readable-p)
(tramp-androidsu-handle-file-regular-p)
(tramp-androidsu-handle-file-remote-p)
(tramp-androidsu-handle-file-selinux-context)
(tramp-androidsu-handle-file-symlink-p)
(tramp-androidsu-adb-handle-file-system-info)
(tramp-androidsu-handle-file-truename)
(tramp-androidsu-handle-file-user-uid)
(tramp-androidsu-adb-handle-file-writable-p)
(tramp-androidsu-handle-find-backup-file-name)
(tramp-androidsu-handle-insert-directory)
(tramp-androidsu-handle-insert-file-contents)
(tramp-androidsu-handle-list-system-processes)
(tramp-androidsu-handle-load, tramp-androidsu-handle-lock-file)
(tramp-androidsu-handle-make-auto-save-file-name)
(tramp-androidsu-adb-handle-make-directory)
(tramp-androidsu-handle-make-lock-file-name)
(tramp-androidsu-handle-make-nearby-temp-file)
(tramp-androidsu-adb-handle-make-process)
(tramp-androidsu-sh-handle-make-symbolic-link)
(tramp-androidsu-handle-memory-info)
(tramp-androidsu-handle-process-attributes)
(tramp-androidsu-adb-handle-process-file)
(tramp-androidsu-adb-handle-rename-file)
(tramp-androidsu-adb-handle-set-file-modes)
(tramp-androidsu-adb-handle-set-file-times)
(tramp-androidsu-handle-set-visited-file-modtime)
(tramp-androidsu-handle-shell-command)
(tramp-androidsu-handle-start-file-process)
(tramp-androidsu-handle-substitute-in-file-name)
(tramp-androidsu-handle-temporary-file-directory)
(tramp-androidsu-adb-handle-get-remote-gid)
(tramp-androidsu-adb-handle-get-remote-groups)
(tramp-androidsu-adb-handle-get-remote-uid)
(tramp-androidsu-handle-unlock-file)
(tramp-androidsu-handle-verify-visited-file-modtime)
(tramp-androidsu-handle-write-region)
(tramp-androidsu-file-name-handler-alist)
(tramp-androidsu-file-name-p, tramp-androidsu-file-name-handler)
(tramp-register-foreign-file-name-handler)
(tramp-adb-connection-local-default-ps-profile, shell)
(tramp-unload-hook, tramp-androidsu): New file.

2 years ago* lisp/vc/vc-hooks.el (vc-mode): Give a body to the function (bug#69387)
Stefan Monnier [Sun, 25 Feb 2024 18:18:08 +0000 (13:18 -0500)]
* lisp/vc/vc-hooks.el (vc-mode): Give a body to the function (bug#69387)

2 years ago* lisp/files.el (hack-one-local-variable): Use `set-auto-mode-0`
Stefan Monnier [Sun, 25 Feb 2024 16:35:44 +0000 (11:35 -0500)]
* lisp/files.el (hack-one-local-variable): Use `set-auto-mode-0`

This fixes bug#69373.

2 years agoModify last change acc to comments
Michael Albinus [Sun, 25 Feb 2024 14:37:06 +0000 (15:37 +0100)]
Modify last change acc to comments

* lisp/simple.el (read-passwd-mode): Change `text' entry of icons.
(read-passwd-toggle-visibility): Rename.
(read-passwd-mode):
* lisp/subr.el (read-passwd-map): Adapt callees.

2 years ago'read-passwd' can toggle the visibility of passwords
Michael Albinus [Sun, 25 Feb 2024 09:06:09 +0000 (10:06 +0100)]
'read-passwd' can toggle the visibility of passwords

* doc/lispref/minibuf.texi (Reading a Password):
* etc/NEWS: 'read-passwd' can toggle the visibility of passwords.

* etc/images/README: Mention the new images below.
* etc/images/conceal.pbm:
* etc/images/conceal.svg:
* etc/images/reveal.pbm:
* etc/images/reveal.svg: New images.

* lisp/simple.el (read-passwd--mode-line-buffer)
(read-passwd--mode-line-icon): New defvars.
(read-passwd--toggle-visibility, read-passwd-mode): New defuns.

* lisp/subr.el (read-passwd-map): Add 'TAB' binding.
(read-passwd--hide-password): New defvar.
(read-passwd--hide-password): Rename function from
`read-password--hide-password'.  Adapt callees.  Implement both
hiding and showing the password.  (Bug#69237)
(read-passwd): Call `read-passwd-mode'.

2 years ago; * lisp/subr.el (if-let, and-let*): Tweak doc strings. (Bug#69108)
Michael Heerdegen [Sun, 18 Feb 2024 01:27:56 +0000 (02:27 +0100)]
; * lisp/subr.el (if-let, and-let*): Tweak doc strings.  (Bug#69108)

2 years agoDon't warn about _ not left unused in if-let and alike
Michael Heerdegen [Fri, 16 Feb 2024 21:07:18 +0000 (22:07 +0100)]
Don't warn about _ not left unused in if-let and alike

The macro expansions did not leave a variable _ unused; this triggered
an irritating compiler warning (bug#69108).

* lisp/subr.el (internal--build-binding): Handle bindings of the form
(_ EXPR) separately.